﻿import {useBaseApi} from '/@/api/base';

// 计划反馈接口服务
export const usePlanListApi = () => {
	const baseApi = useBaseApi("planList");
	return {
		// 分页查询计划反馈
		page: baseApi.page,
		// 查看计划反馈详细
		detail: baseApi.detail,
		// 新增计划反馈
		add: baseApi.add,
		// 更新计划反馈
		update: baseApi.update,
		// 删除计划反馈
		delete: baseApi.delete,
		// 批量删除计划反馈
		batchDelete: baseApi.batchDelete,
		// 导出计划反馈数据
		exportData: baseApi.exportData,
		// 导入计划反馈数据
		importData: baseApi.importData,
		// 下载计划反馈数据导入模板
		downloadTemplate: baseApi.downloadTemplate,
		// 获取下拉列表数据
		getDropdownData: (fromPage: Boolean = false, cancel: boolean = false) => baseApi.dropdownData({ fromPage }, cancel),
		// 更新延期原因
		updateDelayReason: (id: number, field: string, reason: string) => 
			baseApi.request({
				url: baseApi.baseUrl + 'updateDelayReason',
				method: 'post',
				data: { 
					id: id,
					field: field,
					reason: reason
				}
			}),
	}
}

// 计划反馈实体
export interface PlanList {
	// 主键Id
	id: number;
	// 船号
	ch?: string;
	// 分段
	fd?: string;
	// 分类
	className?: number;
	// 区域
	workAreaId?: number;
	// 劳务队
	team: string;
	// 计划开工
	planStart?: string;
	// 计划完工
	planEnd?: string;
	// 实际开工
	actualStart: string;
	// 实际完工
	actualEnd: string;
	// 备注
	remark: string;
	// 状态
	status: number;
	// 开工延期原因
	startDelayReason: string;
	// 完工延期原因
	endDelayReason: string;
	// 开工延期天数
	startDelayDays: number;
	// 完工延期天数
	endDelayDays: number;
	// 租户Id
	tenantId: number;
	// 机构Id
	orgId: number;
	// 软删除
	isDelete?: boolean;
	// 创建时间
	createTime: string;
	// 更新时间
	updateTime: string;
	// 创建者Id
	createUserId: number;
	// 创建者姓名
	createUserName: string;
	// 修改者Id
	updateUserId: number;
	// 修改者姓名
	updateUserName: string;
}